2010-09-05 10:50:13 R12
2010-08-31 17:16:50 R11
2010-08-31 00:21:56 R10
2010-08-30 17:18:24 R9
2010-08-29 21:11:01 R8
2010-08-29 18:27:21 R7
2010-08-29 16:58:28 R6
2010-08-24 22:38:06 R5
2010-08-22 06:13:32 R4
2010-08-15 03:18:01 R3
2010-01-18 01:40:53

REVISION 12
Uh, fixed texture coordinite errors for good this time. Errors are clearer. Probably
something else, dunno.

REVISION 11
Added 16-bit-deep png support, did some texture lighten/darken stuff, added an option
to ignore normals.

REVISION 10
Hopefully the dark texture issue is taken care of...

REVISION 9
wotf.py:
 proper texture stuff for 64x32, 32x64, etc, thanks to xdaniel
 working on alpha, as previously stated
obj2area.py:
 dumps maps to ROM directory
 accepts a command line arg, "-repeat", to repeat the conversion saved in obj2area.setup

Any errors? As previously stated, give me the means to reproduce them! By that, I mean
give me the obj(s), mtl(s), and texutres that you are trying to import, so that I can
get the same error you get.

REVISION 8
I removed some (debugging) stuff that was screwing it up.

REVISION 7
Fixed PNG stuff. I'm working on partial transparency.

REVISION 6
I changed how environments work - the data is the same as kakariko's. Normals should now
look normal, and textures won't be all dark.

BUGFIX IN REVISION 5
Made it so that lightening of textures works.

UPDATE IN REVISION 4
I CANT FIX ANY BUGS I CAN'T REPRODUCE! IF YOU FIND A BUG, GIVE ME THE MEANS TO REPRODUCE
IT! In other news, saving a port to a setup file is now totally possible. UI improved,
small fixes to texturing errors, removed pypng dependence, and some other stuff I forgot. 

UPDATE IN REVISION 3
Removal of collision_fixer.exe, I finally managed to get the collision routine correct.
Also, this file will be encoded with \r\n newlines as to be readable by a wider range
of people :)

OBJ2AREA

Converts wavefront obj into display lists, and inserts those display lists and respective
collision in to Zelda maps and scenes, which then go into a Zelda ROM. Usage:
  $ python obj2area.py
  Zelda 64 Debug ROM: ../ZELOOTMA.z64
  Wavefront obj file for collision: ../dj/well/well_scene.obj
  Area number (0-109): 109
  Scale: 20
  Music value: 0x4C
  Number of start positions: 0x2
  Number of tansition actors: 1
  Number of water boxes: 2
  Use different obj for mesh, or multiple mesh map?(y/n): y
  Enter nothing for `Obj:` when done
  Map 0
   Obj: ../dj/well/well_room_0.obj
   Scale: 20
   Number of Actors: 10
   Number of Objects: 5
   Indoor? (y/n): n
   Reverse faces? (y/n): n
   Lighten textures? (y/n): n
  Map 1
   Obj: ../dj/well/well_room_1.obj
   Scale: 20
   Number of Actors: 10
   Number of Objects: 5
   Indoor? (y/n): y
   Reverse faces? (y/n): n
   Lighten textures? (y/n): n
  Map 2
   Obj: 
  Converting texture 0: ../dj/well/grass1.bmp
  Converting texture 1: ../dj/well/bark.bmp
  Converting texture 3: ../dj/well/tile.bmp
  Converting texture 4: ../dj/well/bricks.bmp
  Converting texture 0: ../dj/well/bricks1.bmp
  Converting texture 1: ../dj/well/bricksb.bmp
  Success! Save configuration?(y/n): y
  $

just give it what it asks for. when it asks for a integer, (ie any number except the scale
values, which are assumed to be base-10 floats) you can specify hex by prefixing with "$"
or "0x", octal with "o" (but what idiot uses octal), and otherwise it assumes decimal

Once you have done your first import, you can do it again without entering everything again:
  $ python obj2area.py
  Repeat last saved conversion?(y/n) y
  Converting texture 0: ../dj/well/grass1.bmp
  Converting texture 1: ../dj/well/bark.bmp
  Converting texture 3: ../dj/well/tile.bmp
  Converting texture 4: ../dj/well/bricks.bmp
  Converting texture 0: ../dj/well/bricks1.bmp
  Converting texture 1: ../dj/well/bricksb.bmp
  Success!
  $

If you just had one typo, or the scale is wrong, or something like that, open up obj2area.setup
in a text editor and change the respective options.
If you wish to repeat your port, without any dialog, give obj2area.py the argument '-repeat':
  $ python obj2area.py -repeat
  Converting texture 0: ../dj/well/grass1.bmp
  Converting texture 1: ../dj/well/bark.bmp
  Converting texture 3: ../dj/well/tile.bmp
  Converting texture 4: ../dj/well/bricks.bmp
  Converting texture 0: ../dj/well/bricks1.bmp
  Converting texture 1: ../dj/well/bricksb.bmp
  $


i've added some small things since the initial release
 - ability to reverse faces
 - ability to do the same import again without entering everything over again.
 - other stuff read the updates above

oh one last thing: wotf can be used to build independent display lists:
Usage: python wotf.py [options] [object file]
Options:
 -s [float]			: set vertex scale
 -sa [float] [float] [float]	: set x/y/z vertex scale
 -st [float]			: set uv scale
 -b [hex/oct/dec val]		: set bank to use for output file
 -a [hex/oct/dec val]		: set start offset to start writing data to
 -o [string]			: output filename [will be in same dir as obj
				  file if not specified, if that is not specified,
				  program's directory will be used.]
 -h, --help			: help message


enjoy

rmo@spinout182.com

eof
